package com.ruoyi.machine.advanced.maintain.register.service;

import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.machine.advanced.maintain.register.domain.MaintainRegister;
import com.ruoyi.machine.advanced.maintain.register.mapper.MaintainRegisterMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 设备保养登记表
 * 业务层处理
 */
@Service
public class MaintainRegisterService implements IMaintainRegisterService {

    @Autowired
    private MaintainRegisterMapper maintainRegisterMapper;

    /**
     * 查找设备保养登记
     * @param maintainRegister
     * @return
     */
    @Override
    public List<MaintainRegister> selectMaintainRegisterList(MaintainRegister maintainRegister) {
        return maintainRegisterMapper.selectMaintainRegisterList(maintainRegister);
    }

    /**
     * 根据Id查找设备保养登记
     * @param maintainRegisterId
     * @return
     */
    @Override
    public MaintainRegister selectMaintainRegisterById(String maintainRegisterId) {
        return maintainRegisterMapper.selectMaintainRegisterById(maintainRegisterId);
    }

    /**
     * 添加设备保养登记
     * @param maintainRegister
     * @return
     */
    @Override
    public int insertMaintainRegister(MaintainRegister maintainRegister) {
        if (StringUtils.isNotNull(maintainRegisterMapper.selectMaintainRegisterById(maintainRegister.getMaintainRegisterId()))) {
            //存在
            return 0;
        }
        //不存在
        return maintainRegisterMapper.insertMaintainRegister(maintainRegister);
    }

    /**
     * 更新设备保养登记
     * @param maintainRegister
     * @return
     */
    @Override
    public int updateMaintainRegister(MaintainRegister maintainRegister) {
        if (!StringUtils.isNotNull(maintainRegisterMapper.selectMaintainRegisterById(maintainRegister.getMaintainRegisterId()))) {
            //不存在
            return 0;
        }
        //存在
        return maintainRegisterMapper.updateMaintainRegister(maintainRegister);
    }

    /**
     * 删除设备保养登记
     * 仅修改删除标志
     * @param maintainRegister
     * @return
     */
    @Override
    public int updateMaintainRegisterDeleteFlag(MaintainRegister maintainRegister) {
        return maintainRegisterMapper.updateMaintainRegisterDeleteFlag(maintainRegister);
    }

    /**
     * 查看天保养计划
     * @param maintainRegister
     * @return
     */
    @Override
    public List<MaintainRegister> selectMaintainRegisterListDay(MaintainRegister maintainRegister) {
        return maintainRegisterMapper.selectMaintainRegisterListDay(maintainRegister);
    }

    /**
     * 查看周保养计划
     * @param maintainRegister
     * @return
     */
    @Override
    public List<MaintainRegister> selectMaintainRegisterListWeek(MaintainRegister maintainRegister) {
        return maintainRegisterMapper.selectMaintainRegisterListWeek(maintainRegister);
    }

    /**
     * 查看月保养计划
     * @param maintainRegister
     * @return
     */
    @Override
    public List<MaintainRegister> selectMaintainRegisterListMonth(MaintainRegister maintainRegister) {
        return maintainRegisterMapper.selectMaintainRegisterListMonth(maintainRegister);
    }

    /**
     * 查看年保养计划
     * @param maintainRegister
     * @return
     */
    @Override
    public List<MaintainRegister> selectMaintainRegisterListYear(MaintainRegister maintainRegister) {
        return maintainRegisterMapper.selectMaintainRegisterListYear(maintainRegister);
    }
}
